package abstractClasses;

interface AbstractInterface{
	int x = 10;
	public abstract void sleepAlot();
}
public abstract class Abstract {
	private int x;
	public Abstract(){
		x = 0;
	}
	public Abstract( int x_in ){
		x = x_in;
	}
	public String toString(){
		return "an instance of Abstract class with x = " + x;
	}
	public abstract void compute();
	
	
	
	
	public static void main(String[] args) {
		Abstract a = new NotAbstract(  );
		System.out.println("The object a is " + a);
		AbstractInterface agnes = new Agnes();
		System.out.println("agnes has " + Agnes.x);
		
	}

}
class NotAbstract extends Abstract{

	@Override
	public void compute() {
		
	}
}

class Agnes implements AbstractInterface{

	@Override
	public void sleepAlot() {
		
	}
}